/* 
filter() 方法返回数组中满足条件的元素组成的新数组， 原数组不变
*/

function filter(arr, callback) {
    let result = [];
    for (let i = 0; i < arr.length; i++) {
        // 执行回调
        let res = callback(arr[i], i);
        // 判断是否为真，为真则压入到结果数组中
        if (res) {
            result.push(arr[i])
        }
    }
    return result;
}